The present invention relates generally to the field of calibrating a multi-axis machining system, and more particularly, to a system and method for virtually calibrating automated equipment running on an xyz-coordinate system.
Multi-axis machining systems such as Computer Numeric Controlled (CNC) machining systems can be used to precisely machine and fabricate a workpiece from a set of instructions. Such systems typically include a table for supporting the workpiece, and a toolhead positioned vertically above the table and moveable relative thereto along one or more of x, y and z linear axes, as well as rotational axes. Movement of the toolhead along the axes can be controlled by instructions implemented, for example, by Computer Aided Design (CAD) software.
One well known format of CNC instruction codes is known as “g-codes”. G-codes are translation instructions in which GO represents a linear movement, and G02 and G03 represent circular or arcuate movements for the toolhead. The process for creating a g-code file involves defining a series of g-codes that represent various contours of the finished product, such as from a model, and defining the requirements of the CNC machine. CNC machine requirements include identifying and labeling features of the model, selecting cutting tools for the toolhead, determining machining speeds, defining an orientation of the workpiece, etc.
After the instruction codes defining the finished model are formulated, the instruction codes are passed to the CNC controller of the CNC machine. The CNC controller uses the instruction codes comprising the g-codes to precisely control the toolhead and cutting tool to machine the workpiece into the finished product.
Before machining, it has been necessary to calibrate the machine to ensure that the mechanical components are in alignment to achieve satisfactory performance from the machine. Machine components can move out of alignment over time as a result of physical contact, machine transport, component wear and normal use. Conventional methods for calibrating a CNC machine to bring components back into alignment include mechanically adjusting the toolhead path along the y-axis, adjusting perpendicularity between the adjusted y-axis and x-axis (i.e., squaring), adjusting the z-axis relative to the y-axis, x-axis and x-y plane, as well as adjustments of rotational axes perpendicular to the x-y plane, among other adjustments.
Such mechanical calibration methods are disadvantageous because they are time consuming and result in significant downtime for the machine. Accordingly, what is needed is a method of virtually calibrating a CNC machine that ensures that the machine performs satisfactorily without the need for mechanical calibration methods.